<!DOCTYPE html>
<html lang="ja">

<head>
  <meta charset="utf-8">
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  <meta http-equiv="Content-Style-Type" content="text/css">
  <script src='../bbs.js'></script>

  <!-- Global site tag (gtag.js) - Google Analytics -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=UA-120820034-1"></script>

  <link href="../bbs.css" type="text/css" rel="stylesheet">
  <link rel="shortcut icon" href="/favicon.ico">
  <title>ssrc_2002-02-09_p1.lzh | サクラエディタ過去ログ</title>
</head>
<body>
<ul class="side">
        <a href="./" class="toindex">◀ANSI版開発トップへ</a>
        <li><div class="list-title">
    <span class="no">1530</span>
    <a class="thread-title" href="1530.html#1530">ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1531</span>
    <a class="thread-title" href="1530.html#1531">Re:ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1534</span>
    <a class="thread-title" href="1530.html#1534">Re2:ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1537</span>
    <a class="thread-title" href="1530.html#1537">Re3:ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1543</span>
    <a class="thread-title" href="1530.html#1543">Re4:ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1544</span>
    <a class="thread-title" href="1530.html#1544">Re5:ssrc_2002-02-09_p1.lzh</a></div>
    </li></ul></li></ul></li><li><div class="list-title">
    <span class="no">1538</span>
    <a class="thread-title" href="1530.html#1538">置換でアプリケーションエラー</a></div>
    <ul><li><div class="list-title">
    <span class="no">1548</span>
    <a class="thread-title" href="1530.html#1548">Re:置換でアプリケーションエラー</a></div>
    <ul><li><div class="list-title">
    <span class="no">1549</span>
    <a class="thread-title" href="1530.html#1549">Re2:置換でアプリケーションエラー</a></div>
    <ul><li><div class="list-title">
    <span class="no">1551</span>
    <a class="thread-title" href="1530.html#1551">Re3:置換でアプリケーションエラー</a></div>
    <ul><li><div class="list-title">
    <span class="no">1552</span>
    <a class="thread-title" href="1530.html#1552">Re4:置換でアプリケーションエラー</a></div>
    </li></ul></li></ul></li></ul></li></ul></li></ul></li></ul></li><li><div class="list-title">
    <span class="no">1535</span>
    <a class="thread-title" href="1530.html#1535">Re:ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1536</span>
    <a class="thread-title" href="1530.html#1536">Re2:ssrc_2002-02-09_p1.lzh</a></div>
    <ul><li><div class="list-title">
    <span class="no">1539</span>
    <a class="thread-title" href="1530.html#1539">GREPアイコン</a></div>
    <ul><li><div class="list-title">
    <span class="no">1540</span>
    <a class="thread-title" href="1530.html#1540">Re:GREPアイコン</a></div>
    <ul><li><div class="list-title">
    <span class="no">1545</span>
    <a class="thread-title" href="1530.html#1545">Re2:GREPアイコン</a></div>
    </li></ul></li><li><div class="list-title">
    <span class="no">1547</span>
    <a class="thread-title" href="1530.html#1547">Re:GREPアイコン</a></div>
    <ul><li><div class="list-title">
    <span class="no">1553</span>
    <a class="thread-title" href="1530.html#1553">Re2:GREPアイコン</a></div>
    </li></ul></li></ul></li></ul></li><li><div class="list-title">
    <span class="no">1598</span>
    <a class="thread-title" href="1530.html#1598">Re:ssrc_2002-02-09_p1.lzh</a></div>
    </li></ul></li></ul></li>
    </ul><ul class="main"><li><section><h1 id=1530>
    <span class="no">[1530]</span>
    <a class="thread-title" href="#1530">ssrc_2002-02-09_p1.lzh</a>
    <span class="author">hor</span>
    <time datetime="2002-02-09T20:26:26">2002年02月09日 20:26</time></h1>
    <div class="body">ssrc_2002-02-09.zip からの変更を ssrc_2002-02-09_p1.lzh にUpしました。<br><br>[変更など]<br> + icon_grep.icoの変更とその大小アイコンを別々に扱うロジックを追加<br> + あろかさんの「ファイル名をコピー」のアイコンを作成<br> + すべて置換の実行中に表示されるダイアログの更新間隔を(置換数 % 8)から(置換数 % 100)に変更して体感速度を向上<br> + すべて置換もマクロで扱えるように変更<br> + アウトラインダイアログで「ブックマーク」&lt;-&gt;「タイプ別設定アウトライン解析」をキーで切替えたときの動作が変だったのを修正<br> + アウトラインダイアログに「ジャンプしたらフォーカスを移す」オプションを追加<br> + アウトラインダイアログに「ブックマーク一覧で空行を無視する」オプションを追加(あろかさん提案)<br> + 検索,置換ダイアログの「該当行マーク」(F_BOOKMARK_PATTERN)もマクロで記録できるように変更<br> + 再描画(F_REDRAW)もマクロで記録できるように変更<br><br>[バグとか]<br> + CDlgFind,CDlgReplaceのIDC_CHK_LOHICASE Enable制御廃止もれを修正<br> + 矩形エリアの端がEOFのみの行を含むときCut,Copyするとアプリケーションエラーになるのを修正<br> + 正規表現でEOFのみの位置から次検索しても先頭から再検索できるように修正<br> + 正規表現で検索したときにEOF直前の文字が何度もマッチしてしまうのを修正<br><br>[その他]<br> + 検索文字列を色分けする＆正規表現検索のときの処理を見直して速度改善<br> + iniファイルに未定義の正規表現キーワード,外部マクロが出力されないように変更<br> + CDlgFuncList::SetTreeBookMarkを削除(他のロジックに統合)して軽量化<br> + CShareData::AddToSearchKeyArrの移動元のコメントを削除<br> + CDlgReplaceのCEditView::Command_REPLACE,CEditView::Command_REPLACE_ALLに移動したロジックを削除<br> + CShareData_new2のCMenuDrawerへ移動された個所を削除<br><br>※ssrc_2002-02-09.zip には みくさんの my_icmp20020202.zip が入っていないようです。</div></section>
    <ul><li><section><h1 id=1531>
    <span class="no">[1531]</span>
    <a class="thread-title" href="#1531">Re:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">hor</span>
    <time datetime="2002-02-09T21:10:26">2002年02月09日 21:10</time></h1>
    <div class="body">&gt; ssrc_2002-02-09.zip からの変更を ssrc_2002-02-09_p1.lzh にUpしました。<br><br>ごめんなさい。以下修正もれです。<br><br>CDlgFuncList.cpp<br><br>@@ -1357,6 +1357,9 @@<br>         pcEditView-&gt;HandleCommand( nFuncCode, TRUE, 0, 0, 0, 0 );<br>         if( m_pShareData-&gt;m_Common.m_bAutoCloseDlgFuncList ){<br>             ::DestroyWindow( m_hWnd );<br>+        }else<br>+        if( m_pShareData-&gt;m_Common.m_bFunclistSetFocusOnJump ){<br>+            ::SetFocus( m_hwndParent );<br>         }<br>    }<br> }</div></section>
    <ul><li><section><h1 id=1534>
    <span class="no">[1534]</span>
    <a class="thread-title" href="#1534">Re2:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">hor</span>
    <time datetime="2002-02-10T00:27:29">2002年02月10日 00:27</time></h1>
    <div class="body">▼ horさん<br>&gt; &gt; ssrc_2002-02-09.zip からの変更を ssrc_2002-02-09_p1.lzh にUpしました。<br>&gt; <br><br>CDlgFuncList.cpp , CEditView_Command.cpp を修正して<br>  ssrc_2002-02-09_p2.lzh をUpしました。<br><br>が、正規表現置換で // を / に置換するオペレーションを行うと、<br>はじめのうちは正常に実行できるのですが、そのうちにアプリケーションエラーになります。<br>（「置換」,「すべて置換」のどちらでも）<br><br>なおそうと試みたのですが、私には解決できませんでした ・・・ どなたか修正お願いします。</div></section>
    <ul><li><section><h1 id=1537>
    <span class="no">[1537]</span>
    <a class="thread-title" href="#1537">Re3:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">あろか</span>
    <time datetime="2002-02-10T09:47:36">2002年02月10日 09:47</time></h1>
    <div class="body">▼ horさん<br>&gt;   ssrc_2002-02-09_p2.lzh をUpしました。<br>&gt; <br>p2を元にヘッダを整理した diff2002-2-9_p3.zip をUpしました。<br>※影響ファイルが多くてサイズが大きかったので差分だけUpします。<br><br>バグ修正・機能追加はひとつもありません。<br></div></section>
    <ul><li><section><h1 id=1543>
    <span class="no">[1543]</span>
    <a class="thread-title" href="#1543">Re4:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">やざき</span>
    <time datetime="2002-02-10T23:52:11">2002年02月10日 23:52</time></h1>
    <div class="body">▼ あろかさん<br>&gt; p2を元にヘッダを整理した diff2002-2-9_p3.zip をUpしました。<br>&gt; ※影響ファイルが多くてサイズが大きかったので差分だけUpします。<br>&gt; <br>&gt; バグ修正・機能追加はひとつもありません。<br><br>取り込みました。ありがとうございます。<br><br>で、取り込んでいったら<br>sakura_core.*<br>は不要そうな気がしたので削除しました。</div></section>
    <ul><li><section><h1 id=1544>
    <span class="no">[1544]</span>
    <a class="thread-title" href="#1544">Re5:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">あろか</span>
    <time datetime="2002-02-11T02:38:00">2002年02月11日 02:38</time></h1>
    <div class="body">▼ やざきさん<br>&gt; ▼ あろかさん<br>&gt; &gt; p2を元にヘッダを整理した diff2002-2-9_p3.zip をUpしました。<br>&gt; <br>&gt; 取り込みました。ありがとうございます。<br>&gt; <br>ついでにもうひとつ。<br>ルーラー部分をクリックするとタブ幅が変わるようにしてみました。<br>挙動がいまいちなのでもうすこし動作仕様を練らないと本採用は難しそう。<br>ベースは p2 です。<br><br>&gt; で、取り込んでいったら<br>&gt; sakura_core.*<br>&gt; は不要そうな気がしたので削除しました。<br>よろしくお願いしまーす。</div></section>
    </li></ul></li></ul></li><li><section><h1 id=1538>
    <span class="no">[1538]</span>
    <a class="thread-title" href="#1538">置換でアプリケーションエラー</a>
    <span class="author">げんた</span>
    <time datetime="2002-02-10T12:47:55">2002年02月10日 12:47</time></h1>
    <div class="body">▼ horさん<br>&gt;が、正規表現置換で // を / に置換するオペレーションを行うと、<br>&gt;そのうちにアプリケーションエラーになります。<br>該当個所を発見しました．<br><br>CBregexp::Replace において，パターン格納用メモリを<br>char *szNPattern = new char[ ( strlen( szPattern0 ) + strlen( szPattern1 )) * 2 + 5 ];<br>としていますが，<br><br>s/文字列1/文字列2/オプション<br>ですので検索・置換文字列に加えて s///kmi\0 の8文字が必要です．しかし5文字しか余裕がないのでバッファオーバーランしているのだと思います．不要なオプションmを削って，最後の+5を+7より大きな値にしてもらえれば直ります．<br><br>CBregexp::Compileの方は /文字列/オプション で，//ki\0 ですから5文字に収まっていますので，<br>私がそっちからコピーしたときに計算し忘れたんだと思います m(_ _)m．<br>バッファオーバーランはバッファ破壊を起こした場所の「次の」メモリ操作で死にますので発見が難しいですよね．<br><br>なお，この問題は1.2.105.3でも発生する可能性があります．<br></div></section>
    <ul><li><section><h1 id=1548>
    <span class="no">[1548]</span>
    <a class="thread-title" href="#1548">Re:置換でアプリケーションエラー</a>
    <span class="author">hor</span>
    <time datetime="2002-02-11T11:51:35">2002年02月11日 11:51</time></h1>
    <div class="body">▼ げんたさん<br>&gt; ▼ horさん<br>&gt; &gt;が、正規表現置換で // を / に置換するオペレーションを行うと、<br>&gt; &gt;そのうちにアプリケーションエラーになります。<br>&gt; 該当個所を発見しました．<br>&gt; <br>&gt; CBregexp::Replace において，パターン格納用メモリを<br>&gt; char *szNPattern = new char[ ( strlen( szPattern0 ) + strlen( szPattern1 )) * 2 + 5 ];<br>&gt; としていますが，<br>&gt; <br>&gt; s/文字列1/文字列2/オプション<br>&gt; ですので検索・置換文字列に加えて s///kmi\0 の8文字が必要です．しかし5文字しか余裕がないのでバッファオーバーランしているのだと思います．不要なオプションmを削って，最後の+5を+7より大きな値にしてもらえれば直ります．<br>&gt; <br>&gt; CBregexp::Compileの方は /文字列/オプション で，//ki\0 ですから5文字に収まっていますので，<br>&gt; 私がそっちからコピーしたときに計算し忘れたんだと思います m(_ _)m．<br>&gt; バッファオーバーランはバッファ破壊を起こした場所の「次の」メモリ操作で死にますので発見が難しいですよね．<br>&gt; <br>&gt; なお，この問題は1.2.105.3でも発生する可能性があります．<br><br>解決！  ありがとうございました。<br><br>ところでCBregexp::Replace内のBSubst実行後のReleaseCompileBuffer()って<br>ssrc_2002-02-01前後で入ったり消えたりしてると思うんですけど、<br>ほんとはどっちが良いんでしょう？</div></section>
    <ul><li><section><h1 id=1549>
    <span class="no">[1549]</span>
    <a class="thread-title" href="#1549">Re2:置換でアプリケーションエラー</a>
    <span class="author">やざき</span>
    <time datetime="2002-02-11T12:29:14">2002年02月11日 12:29</time></h1>
    <div class="body">▼ horさん<br>&gt; ところでCBregexp::Replace内のBSubst実行後のReleaseCompileBuffer()って<br>&gt; ssrc_2002-02-01前後で入ったり消えたりしてると思うんですけど、<br>&gt; ほんとはどっちが良いんでしょう？<br><br>いまあるとおり、Replace内にあるのが正解。<br>私が実装したものは、Replace外でReleaseCompileBufferしていました。<br></div></section>
    <ul><li><section><h1 id=1551>
    <span class="no">[1551]</span>
    <a class="thread-title" href="#1551">Re3:置換でアプリケーションエラー</a>
    <span class="author">げんた</span>
    <time datetime="2002-02-11T14:22:20">2002年02月11日 14:22</time></h1>
    <div class="body">ReleaseCompileBuffer()というのは動作としてはメモリ解放ですが、newに対するdeleteと同じではないので別にいちいち解放する必要はないと思います。どちらかといえば前回の続きではないよという宣言。<br><br>何回呼んでも問題は起こらないので終了時に解放しても間違いではありませんが、検索を行う直前にやるものと考えた方がしっくり来ます。<br></div></section>
    <ul><li><section><h1 id=1552>
    <span class="no">[1552]</span>
    <a class="thread-title" href="#1552">Re4:置換でアプリケーションエラー</a>
    <span class="author">やざき</span>
    <time datetime="2002-02-11T14:32:30">2002年02月11日 14:32</time></h1>
    <div class="body">(BREGEXP.DLLのページから引用)<br>&gt;BREGEXP構造体をうまく使うと処理を高速化できます。同じ正規表現を使う関数の呼出しには、同じコンパイルブロックを使えばいいのです。 <br><br>なので、がむしゃらにReleaseしてしまうのはさびしいですねぇ。<br></div></section>
    </li></ul></li></ul></li></ul></li></ul></li></ul></li></ul></li><li><section><h1 id=1535>
    <span class="no">[1535]</span>
    <a class="thread-title" href="#1535">Re:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">やざき</span>
    <time datetime="2002-02-10T00:30:36">2002年02月10日 00:30</time></h1>
    <div class="body">いただきました。すばらしいですねぇ。<br>いくつか確認をば。<br><br>&gt;  + icon_grep.icoの変更とその大小アイコンを別々に扱うロジックを追加<br><br>icon_grep.icoが、DEBUG版のアイコンと同じものになってますけど、虫眼鏡の間違い？<br>それとも意図して変えてます？<br><br><br>&gt;  + アウトラインダイアログに「ジャンプしたらフォーカスを移す」オプションを追加<br><br>ENTERキーを押したときは、フォーカスが移動しますが、ダブルクリックしたときは移動しないみたいです。<br>「ジャンプ」を押した時は移動します。<br><br><br>&gt; [バグとか]<br>&gt;  + CDlgFind,CDlgReplaceのIDC_CHK_LOHICASE Enable制御廃止もれを修正<br><br>重ね重ね失礼しました。(__;<br><br>&gt;  + CShareData_new2のCMenuDrawerへ移動された個所を削除<br><br>これに伴って、CShareData_new2に入っていたコンストラクタを、CShareData_newに入れて、<br>CShareData_new2を削除しました。<br><br>&gt; ※ssrc_2002-02-09.zip には みくさんの my_icmp20020202.zip が入っていないようです。<br><br>こちらも失礼いたしました。(__;<br><br>では～。</div></section>
    <ul><li><section><h1 id=1536>
    <span class="no">[1536]</span>
    <a class="thread-title" href="#1536">Re2:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">hor</span>
    <time datetime="2002-02-10T00:54:25">2002年02月10日 00:54</time></h1>
    <div class="body">▼ やざきさん<br>&gt; icon_grep.icoが、DEBUG版のアイコンと同じものになってますけど、虫眼鏡の間違い？<br>&gt; それとも意図して変えてます？<br><br>意図して変えました。<br>虫眼鏡のやつをしばらく使ってたのですが、なんだかうっとおしくなってきたので、<br>DEBUG版に良く似たicon_std.icoの色違いにしたいな～と思いまして・・・<br><br>&gt; &gt;  + アウトラインダイアログに「ジャンプしたらフォーカスを移す」オプションを追加<br>&gt; ENTERキーを押したときは、フォーカスが移動しますが、ダブルクリックしたときは移動しないみたいです。<br>&gt; 「ジャンプ」を押した時は移動します。<br><br>ssrc_2002-02-09_p2.lzh で修正しました。確認よろしくお願いします。<br><br>あと、別件ですが CEditView_Command_New.cpp の799行目に m_bDrawSWITCH=FALSE; を挿入して、<br>935行目の/* 再描画 */の前に m_bDrawSWITCH=TRUE; を入れると大きな「元に戻す」を実行したときのストレスが緩和します。</div></section>
    <ul><li><section><h1 id=1539>
    <span class="no">[1539]</span>
    <a class="thread-title" href="#1539">GREPアイコン</a>
    <span class="author">げんた</span>
    <time datetime="2002-02-10T15:06:29">2002年02月10日 15:06</time></h1>
    <div class="body">&gt;虫眼鏡のやつをしばらく使ってたのですが、なんだかうっとおしくなってきたので、<br>&gt;DEBUG版に良く似たicon_std.icoの色違いにしたいな～と思いまして・・・<br>虫眼鏡アイコン(やざきさん作？)気に入っていたのに...(ToT)ダー<br>どの辺が鬱陶しいのかは好みの問題なので聞いてもしょうがないと思いますが，形が違った方がタスクバーから見つけやすいと思うのですが．<br><br>アプリケーションアイコンも外部から読み込み可能にできませんかね．以前2chでUPされたアイコンも活用したいし．<br></div></section>
    <ul><li><section><h1 id=1540>
    <span class="no">[1540]</span>
    <a class="thread-title" href="#1540">Re:GREPアイコン</a>
    <span class="author">やざき</span>
    <time datetime="2002-02-10T16:56:51">2002年02月10日 16:56</time></h1>
    <div class="body">▼ げんたさん<br>&gt; 虫眼鏡アイコン(やざきさん作？)<br><br>違います～。参加したときにはもうあった。<br><br>私も明らかに違うアイコンのほうが好み。<br>デバッグモードで作業することも多いので、デバッグモードのアイコンとGREPのアイコンが同じようなのは少し困るかも。<br></div></section>
    <ul><li><section><h1 id=1545>
    <span class="no">[1545]</span>
    <a class="thread-title" href="#1545">Re2:GREPアイコン</a>
    <span class="author">あろか</span>
    <time datetime="2002-02-11T02:48:41">2002年02月11日 02:48</time></h1>
    <div class="body">▼ やざきさん<br>&gt; ▼ げんたさん<br>&gt; &gt; 虫眼鏡アイコン(やざきさん作？)<br>&gt; <br>&gt; 違います～。参加したときにはもうあった。<br>&gt; <br>&gt; 私も明らかに違うアイコンのほうが好み。<br>&gt; デバッグモードで作業することも多いので、デバッグモードのアイコンとGREPのアイコンが同じようなのは少し困るかも。<br>虫眼鏡アイコンの背景がきれいに白いので多少違和感を感じることはあります。でも青いやつは検索結果らしくなくて物足りない気がします。<br>で、四角が見えるようにエディタのアイコンに虫眼鏡を重ねたら。。。右利きの人には使えなくなってしまった。(^_^;<br></div></section>
    </li></ul></li><li><section><h1 id=1547>
    <span class="no">[1547]</span>
    <a class="thread-title" href="#1547">Re:GREPアイコン</a>
    <span class="author">hor</span>
    <time datetime="2002-02-11T09:25:27">2002年02月11日 09:25</time></h1>
    <div class="body">▼ げんたさん<br>&gt; &gt;虫眼鏡のやつをしばらく使ってたのですが、なんだかうっとおしくなってきたので、<br>&gt; &gt;DEBUG版に良く似たicon_std.icoの色違いにしたいな～と思いまして・・・<br>&gt; 虫眼鏡アイコン(やざきさん作？)気に入っていたのに...(ToT)ダー<br>&gt; どの辺が鬱陶しいのかは好みの問題なので聞いてもしょうがないと思いますが，形が違った方がタスクバーから見つけやすいと思うのですが．<br>&gt; <br><br>現在のGrep「虫眼鏡」は私(hor)が作ったものです・・・白の部分が多いせいか、明るすぎて鬱陶しく感じました。<br>でも、思いのほか「虫眼鏡」の方が好評のようなので、これをちょっと暗くしたようなアイコンを作ってみます。</div></section>
    <ul><li><section><h1 id=1553>
    <span class="no">[1553]</span>
    <a class="thread-title" href="#1553">Re2:GREPアイコン</a>
    <span class="author">hor</span>
    <time datetime="2002-02-11T17:59:13">2002年02月11日 17:59</time></h1>
    <div class="body">&gt; でも、思いのほか「虫眼鏡」の方が好評のようなので、これをちょっと暗くしたようなアイコンを作ってみます。<br><br>と思いましたが、なんだか良いのができないです。  とりあえず前のままってことで・・・</div></section>
    </li></ul></li></ul></li></ul></li><li><section><h1 id=1598>
    <span class="no">[1598]</span>
    <a class="thread-title" href="#1598">Re:ssrc_2002-02-09_p1.lzh</a>
    <span class="author">みく</span>
    <time datetime="2002-02-14T19:31:27">2002年02月14日 19:31</time></h1>
    <div class="body">&gt;タイトル: Re:ssrc_2002-02-09_p1.lzh<br>&gt;発言者: やざき<br>&gt;&gt; ※ssrc_2002-02-09.zip には みくさんの my_icmp20020202.zip が入っていないようです。<br>&gt;<br>&gt;こちらも失礼いたしました。(__;<br><br>これですが、ヘッダを書き換えないと有効になりません。<br>ただ有効にすると、他のソースファイルもicmp系関数を置き換えないと<br>希望どおりの動作になりませね。→なので今回は無効にしてます。<br></div></section>
    </li></ul></li></ul></li></ul></body></html>